閱讀提醒:本文會以解析高級賽車模板功能來介紹 Vehicle Blueprint(車輛藍圖)如何撰寫車輛的移動及煞車。
服用說明:閱讀此篇前,請先到 Project Setting 設定 Engine Input。
https://ithelp.ithome.com.tw/articles/10295600Unreal Engine:5.03 高級賽車模板
OS:Windows10
1. MoveForward 油門、前進、煞車、煞車燈
2. MoveRight 轉向
3. Brake Light function 煞車燈
4. Handbrake and brake lights 手煞車、煞車燈
昨天寫好了車輛的 Component 的設定,今天就繼續來看車輛藍圖吧!
開始撰寫前,提醒大家先到 Project Setting 設定 Engine Input,設定 Input 的部份,在 Day6 的文有提到,這邊就不再多說明了。
首先我們先新增 InputAxis MoveForward
的事件,點擊 Exec 節點,並拖曳至空白處放開,新增 Branch
。
點擊 Axis Value 的節點,並拖曳至空白處搜尋 >=
,選擇 Greater Equal
,並將數值設為 0.0。而 Output 接上剛剛創建的 Branch 的 Condition
節點。
W
,Input MoveForward,會接收到 >= 0
的值。Branch
分支,去分別判斷現在的 Input 是該前進還是該煞車。可以想成是 if 的概念。
Branch
的 True
節點 (Input >= 0)
Throttle 油門:
True
節點,新增 Set Throttle Input
,其接收的 Input 數值範圍為 「0 ~ 1」
,需將 InputAxis Forward 的 Axis Value
與 Throttle
油門節點相連。 (「Vehicle Movement Component」
會很貼心的自動生成連上 Target
節點)Brake 煞車:
Set Throttle Input
的 Output 節點拖曳到空白處新增 Set Brake Input
,並將此 Vehicle Movement Component
傳遞給 Target
。Brake Light 煞車燈:
Set Brake Input
的 Output 節點新增 Do Once
節點,顧名思義就是只會觸發、執行一次,在 Completed
節點連上 Brake Lights
事件。這邊可以想像成平常開車時,前進時油門需要一直踩著,Input 一次只給一次的力,然後就會減速甚至停下來,所以後面就接煞車。
Branch
的 False
節點 (Input < 0)
Multiply
,顧名思義為 A x B,並將值設為 -1.0
。False
節點新增 Set Brake Input
,並將 Multiply
的 Output 連上 Brake
節點。True
相反,這邊接上 Set Throttle Input
,然後 Target
節點連上 Vehicle Movement Component
,就像踩一下油門後放開,就會停止繼續減速。Brake Lights
事件,並將 Output 連上前面新增的 Do Once
的 Reset 節點,讓之後點擊煞車時還能夠觸發。Input Axis MoveRight
,點擊 Exec 節點並拖曳至空白處放開新增 Set Steering Input
。Steering
節點連上 Axis Value
。Brake Lights
函數,分開寫會比較清楚,所以補在這!functions 面板
新增 Brake Lights
函數,新增完成後點擊兩下,打開函數的藍圖面板。Create Dynamic Material Instance
(創建動態材質實例),然後設置 Set Material
(材質的),並將 Target
連上 Mesh
。True
及關燈 False
的亮度參數(Value = 200.0、4.0)。Brake Lights
節點接上 Branch
,就能控制是否開啟煞車燈了。InputAction Handbrake
的事件,它的 Output 為 Pressed
(按下) 跟 Released
(放開),分別新增 Set Handbrake Input
,Target
連上 Vehicle Movement Component
,Output 連上 Brake Lights
的事件。Set Handbrake Input
及 Brake Lights
的節點布林值。TIPS
在所有的事件藍圖中,左邊的點是 Input,右邊的點是 Output,且由左而右為執行順序。
滑鼠按住節點,並拖曳到空白處放開,即可搜尋並建立事件、函數、變數...等等。
如果想要有灰色區塊的註解,可以用滑鼠將需要註解的區塊框起來後,按
C
。
小結:基本的移動藍圖控制就到這了。在 Unreal 中,新增什麼都按滑鼠右鍵就對了!這次感覺寫得比昨天好一點點了~( ˘・з・)